package com.bookm.bookm.service;


import cn.hutool.db.Entity;
import com.bookm.bookm.entity.Book;
import com.bookm.bookm.entity.Result;

import java.util.HashMap;

public interface BookService {
    /**
     * 分页查询图书列表
     * @param curPage 当前页
     * @param pageSize 每页大小
     * @return data
     */
    public Result getBookList(Integer curPage, Integer pageSize, Entity entity, Integer cid, String searText);

    /**
     * 获取指定查询规则下查询到的记录数量
     * @param cid 图书分类id
     * @param searText 搜索文本
     * @return 记录数
     */
    public long count(Integer cid, String searText);

    /**
     * 搜索图书信息并分页
     * @param curPage 当前页
     * @param pageSize 每页数量
     * @param class_ 图书类别id
     * @return 图书列表
     */
    public Result search(Integer curPage, Integer pageSize, Integer class_);
    /**
     * 添加图书
     * @param book 图书信息
     * @return 1 of success, 0 of fail
     */
    public Result addBook(Book book);

    /**
     * 获取所有图书信息
     * @return 图书信息列表
     */
    public Result bookListAll();

    /**
     * 更新图书信息
     * @param book 图书信息
     * @return 1 for success 0 for fail
     */
    public Result updateBook(Book book);

    /**
     * 删除图书信息
     * @param bookId 图书id
     * @return 1 for success 0 for fail
     */
    public Result delBook(String bookId);

    /**
     * 根据图书编号获取图书信息
     * @param bookId 图书编号
     * @return 图书信息
     */
    public Book getBook(String bookId);
}
